---
id: 埋点
title: 埋点  
---

## 在nuxtjs中添加埋点


### 埋点：
who 身份标识、设备标识
When 访问时长、停留时长（停留内容）
where 页面位置、地埋位置
What  点赞，收藏，转发，评论，等等


### 身份标识解决方案
	1. 生成一个uuid 放在local里，每次数据上报都带上这个uuid。

### 页面停留时长
	1. 使用nuxtjs router中间件。

### what 按钮级别解决方案
	1.使用自定义指令，优点：对业务没有侵入式。

### 复制行为

### 获取页面行为
document.location 

{
    "ancestorOrigins": {
        "0": "https://code.devrank.cn",
        "1": "https://code.juejin.cn",
        "2": "https://juejin.cn"
    },
    "href": "https://code.devrank.cn/preview?projectId=7216503874676097056", // 页面的URL
    "origin": "https://code.devrank.cn", // 页面来源
    "protocol": "https:", // 页面的协议
    "host": "code.devrank.cn",
    "hostname": "code.devrank.cn",
    "port": "", // 端口
    "pathname": "/preview",
    "search": "?projectId=7216503874676097056", // 参数
    "hash": ""
}

document.referrer // type: string  获取来源页面的url
document.title 页面title

document.screen 
{
    colorDepth: 30 // 颜色深度
    width: 1440, // 高度
    height:900, // 屏幕高度
    pixelDepth: 30, // 屏幕的像素点
}

获取用户的设备信息
